package cn.tedu.store.mapper;

import java.util.Date;
import java.util.List;

import org.apache.ibatis.annotations.Param;

import cn.tedu.store.entity.Address;

public interface AddressMapper {
	
	Integer insert (Address address);
	
	Integer countByUid(Integer uid);
	/**
	 * 获取某用户的收货地址列表
	 * @param uid 用户的id
	 * @return 
	 */
	List<Address> findByUid(Integer uid);
	
	/**
	 * 将指定的收货地址设置为默认
	 * @param aid
	 * @param uid
	 * @param modifiedUser
	 * @param modifiedTime
	 * @return
	 */
	Integer updateDefaultByAid(
		    @Param("aid") Integer aid, 
		    @Param("modifiedUser") String modifiedUser, 
		    @Param("modifiedTime") Date modifiedTime);
	/**
	 * 将所有的收货地址设置为非默认
	 * @param uid
	 * @return
	 */
	Integer updateNonDefaultByUid(Integer uid);
	
	/**
	 * 根据收货地址的aid查询收货地址的信息
	 * @param aid
	 * @return
	 */
	Address findByAid(Integer aid);
	
	Integer deleteByAid(Integer aid);
	
	Address findLastModifiedByUid(Integer uid);

}
